#ifndef _CANIMATIONMANAGER_H_
#define _CANIMATIONMANAGER_H_

#include <vector>
#include "CAnimation.h"
#include <string>
using std::string;

class CAnimationManager
{
private:
	bool isFlipped;
	int nextAvailableIndex;
	std::vector<CAnimation*> m_vAnimations;
	
	CAnimationManager();
	~CAnimationManager();
	CAnimationManager(const CAnimationManager& ref);
	CAnimationManager& operator=(const CAnimationManager& ref);

public:
	static CAnimationManager* GetInstance();
	// Returns an ID for the animation to be used with the Play function
	int Load(string filename, DWORD dwColor);
	void Play(int nPosX, int nPosY,float scaleX,float scaleY, int nIndex);
	void UpdateAnimation(float elapsedTime, int nIndex);
	void UpdateAllAnimations(float elapsedTime);
};

#endif